package com.wyzz.hr.pojo.base;

import java.io.Serializable;

import com.wyzz.hr.pojo.Outmatch;
import com.wyzz.hr.pojo.OutmatchBasic;
import com.wyzz.hr.pojo.OutmatchModel;

public abstract class BaseOutmatch implements Serializable {

	public BaseOutmatch() {
		hashCode = 0x80000000;
		initialize();
	}

	public BaseOutmatch(String omId) {
		hashCode = 0x80000000;
		setOmId(omId);
		initialize();
	}

	public BaseOutmatch(String omId, OutmatchBasic omOmb, OutmatchModel omOmm,
			String omFieldDesc, Integer omSortId, Integer omColumnWidth,
			Integer omIsGroup) {
		hashCode = 0x80000000;
		setOmId(omId);
		setOmOmb(omOmb);
		setOmOmm(omOmm);
		setOmFieldDesc(omFieldDesc);
		setOmSortId(omSortId);
		setOmColumnWidth(omColumnWidth);
		setOmIsGroup(omIsGroup);
		initialize();
	}

	protected void initialize() {
	}

	public String getOmId() {
		return omId;
	}

	public void setOmId(String omId) {
		this.omId = omId;
		hashCode = 0x80000000;
	}

	public String getOmFieldDesc() {
		return omFieldDesc;
	}

	public void setOmFieldDesc(String omFieldDesc) {
		this.omFieldDesc = omFieldDesc;
	}

	public String getOmStatistic() {
		return omStatistic;
	}

	public void setOmStatistic(String omStatistic) {
		this.omStatistic = omStatistic;
	}

	public String getOmFormat() {
		return omFormat;
	}

	public void setOmFormat(String omFormat) {
		this.omFormat = omFormat;
	}

	public Integer getOmSortId() {
		return omSortId;
	}

	public void setOmSortId(Integer omSortId) {
		this.omSortId = omSortId;
	}

	public Integer getOmColumnWidth() {
		return omColumnWidth;
	}

	public void setOmColumnWidth(Integer omColumnWidth) {
		this.omColumnWidth = omColumnWidth;
	}

	public Integer getOmIsGroup() {
		return omIsGroup;
	}

	public void setOmIsGroup(Integer omIsGroup) {
		this.omIsGroup = omIsGroup;
	}

	public OutmatchBasic getOmOmb() {
		return omOmb;
	}

	public void setOmOmb(OutmatchBasic omOmb) {
		this.omOmb = omOmb;
	}

	public OutmatchModel getOmOmm() {
		return omOmm;
	}

	public void setOmOmm(OutmatchModel omOmm) {
		this.omOmm = omOmm;
	}

	public boolean equals(Object obj) {
		if (null == obj)
			return false;
		if (!(obj instanceof Outmatch))
			return false;
		Outmatch outmatch = (Outmatch) obj;
		if (null == getOmId() || null == outmatch.getOmId())
			return false;
		else
			return getOmId().equals(outmatch.getOmId());
	}

	public int hashCode() {
		if (0x80000000 == hashCode) {
			if (null == getOmId())
				return super.hashCode();
			String hashStr = (new StringBuilder()).append(getClass().getName())
					.append(":").append(getOmId().hashCode()).toString();
			hashCode = hashStr.hashCode();
		}
		return hashCode;
	}

	public String toString() {
		return super.toString();
	}

	public static String REF = "Outmatch";
	public static String PROP_OM_IS_GROUP = "omIsGroup";
	public static String PROP_OM_ID = "omId";
	public static String PROP_OM_SORT_ID = "omSortId";
	public static String PROP_OM_OMM = "omOmm";
	public static String PROP_OM_OMB = "omOmb";
	public static String PROP_OM_STATISTIC = "omStatistic";
	public static String PROP_OM_FORMAT = "omFormat";
	public static String PROP_OM_FIELD_DESC = "omFieldDesc";
	public static String PROP_OM_COLUMN_WIDTH = "omColumnWidth";
	private int hashCode;
	private String omId;
	private String omFieldDesc;
	private String omStatistic;
	private String omFormat;
	private Integer omSortId;
	private Integer omColumnWidth;
	private Integer omIsGroup;
	private OutmatchBasic omOmb;
	private OutmatchModel omOmm;

}
